/**
 * 1.装箱/装包——把简单类型转换为包装类型；拆箱/拆包——把包装类型转换为简单类型
 * 2.cmd:javap -c Test 汇编指令
 */

public class Test {
    public static void main3(String[] args) {
        Integer a = 55;
        Integer b = 55;
        System.out.println(a == b);

        Integer aa = 666;
        Integer bb = 666;
        System.out.println(aa == bb);
        /**
         * 1.Integer包装类是引用类型，通过等号比较比较的是地址
         * 2.通过调试查看问题出在哪里
         * 3.此为装箱过程，应去查看valueOf()的源码.观察它是如何实现的(Ctrl+鼠标点击)
         */
    }



    public static void main2(String[] args) {//拆箱
        Integer a = 22;//自动装箱
        int i = a;//自动拆箱，底层调用intValue().

        int b = a.intValue();
        double c = a.doubleValue();//显式拆箱
    }



    public static void main1(String[] args) {//装箱
        int i = 30;
        Integer a = i;//自动装箱，底层调用Integer.valueOf()

        Integer b = Integer.valueOf(28);//显式装箱
    }
}


